The invention is directed toward a technology for providing a liaison interface between a user and an existing user interface, and more particularly to such a liaison interface where the existing user interface normally requires an extensive amount of direct user interaction, and where the liaison interface isolates the user from the existing user interface by taking the place of the user in the extensive direct interaction with the existing user interface in order to reduce the amount of direct interaction required of the user.
Large systems often include monitoring systems that permit one or more users to monitor the performance of the system in general, and to specifically monitor the state of one or more parameters of the large system. In some instances, the manner in which the monitoring system delivers information to the user can be a burden.
An example of the large system discussed above is a wireless communication network. Lucent Technologies Inc. has developed a monitoring system that a user can use to change parameters of the large system as well as to extract data about the large system. This monitoring system can generate the TIpdunix (TI) interface, the Status Display Page (SDP) interface and/or the AUTOPLEX Recent Change and Verification Database (APXRCV) interface. These interfaces can be used individually. But typically, information extracted from one of the interfaces is used to make a decision to use a second one of the interfaces in one way or another. To use an interface, a user must start a discrete process. In a windows-based environment, each interface session has its own window.
These discrete or non-integrated interfaces to the monitoring systems pose problems for the user. Each interface has its own set of commands as well as formats for returning information to the user. These command sets and display formats are extensive. This burdens the user""s memory. Moreover, the SDP interface returns information in a manner that requires the user to interpret a combination of the foreground and background colors, as well as whether the associated text is blinking or not, in a particular region of the screen in order to determine the state of a system component of a large system.
Based upon the information extracted from a first interface, the user must make a decision about whether it is appropriate to use a second interface and if so, the user must appropriately form the command to be submitted. Often, the first interface is used merely to verify that the large system is operating correctly. The user must inspect the data returned by the first interface to confirm that it is consistent with normal operation of the large system. If there is some discrepancy, it must be recognized by the user. Then, the user must determine the problem that is indicated by the discrepancy. Then, the user must take appropriate action, typically via one of the other interfaces.
While the user has the responsibility of confirming via one of the interfaces that the operation of the large system is normal, the user is essentially a prisoner to that interface. The user must continually confirm that the operation of the large system is normal by repeatedly extracting data from the large system. If the user fails to recognize a discrepancy in the data that is returned, then the user will have failed to recognize that there is a problem for which action must be taken.
In another instance, the user might use one of the interfaces to change a parameter in the large system. To confirm that the parameter change has taken effect, the user typically has to use a second interface. But there is typically a delay between the requested change of parameter and the time at which it takes effect in the large system. To confirm that the change has taken effect, the user must repeatedly extract information from the large system via the second interface. Again, the user becomes a prisoner of the second interface until the user recognizes something in the data returned by the second interface that indicates the desired change has taken place.
Again, the TI, SDP and APXRCV interfaces each require a great deal of direct user interaction. An example of this is depicted in the unified modeling diagram of FIG. 1. FIG. 1 depicts interactions between a user 101 and a monitoring system 304 (to be discussed in more detail below concerning FIG. 3). Communication from the user originates from a line 102, while communications from the monitoring system 304 originate from a line 104. The monitoring system 304 can generate the TI, SDP and/or APXRCV interfaces discussed above.
In the unified modeling diagram of FIG. 1, a user desires the result of executing an inventory command via the TI interface. To do so, the user might have to manipulate a field in the APX database in order to enable the use of an inventory command of the TI interface. First, the user must initiate an interface session with the APXRCV interface.
Then, the user must make a backup copy of the APXRCV database for the cell in consideration. Making the backup copy represents the first action requested by the user and it is requested via the APXRCV interface, i.e., the first interface. This is a prudent step to prevent unwanted changes to the database. Then, the user must request data from a particular field within the database. This represents the first data request by the user. Again, it is requested via the first interface. This also requires the user to remember the relevant command and its arguments. Then, the user must wait to find out if the data request is successful or if it failed.
If the first data request is successful, then the user must evaluate the data returned from the field in the database and determine whether it is necessary to modify that data so that the later TI command will be enabled. If the content of the field in the database must be altered, then the user must remember the relevant command and its arguments as well as construct and submit the command. In other words, the user must request a second action, again, via the APXRCV interface. Once the particular field in the database stores the desired value, the user must initiate a TI session. Then, the user must determine whether the TI session has been successfully established. If not, then the user must restore the APXRCV database to its original values. Otherwise, the user must remember the desired TI command and its arguments. In other words, the user must request a third action, but this time it is requested via a second interface (the TI interface). Then the user should terminate the TI session. Then the user should restore the previous values of the APXRCV database, i.e., request a fourth action, again, via the first interface.
Again, FIG. 1 depicts the interaction between the user 101 and monitoring system 304 in the example discussed above. At item 105, after the user has initiated the APXRCV interface session, the user must remember the format of the desired command. At item 106, the user constructs and submits this command, i.e., requests the first action via the first interface. It is to be recalled that this corresponds to backing up the APXRCV database for the cell under consideration.
At item 107, the user must remember the format of the command needed to extract the value of a field within the particular database. At item 108, the user constructs and then submits the desired command, i.e., requests the first data via the first interface. At item 109, the APXRCV interface returns the first data. At item 110, the user must analyze the first data and decide whether or not that field in the database must be modified.
Assuming that the field in the database must be modified, at item 111, the user must remember the format for the desired command. At item 112, the user must construct and submit the desired command, i.e., the user must request the second action via the first interface. Then, at item 114, the user must determine if the change to the APXRCV database field was successful. If so, then the user must initiate a TI interface session. Then, the user must remember the format of the desired TI interface command at item 116. At item 118, the user must construct and submit the desired TI command, i.e., must submit the third request for action via the second interface. Then, the user must remember the format for the command to be used to restore the previous values of the APXRCV database for the cell under consideration. At item 120, the user must construct and submit the fourth request for action (this restore command) via the first interface (the APXRCV interface).
FIG. 1 depicts thirteen (13) of the more important instances involving direct interaction between the user and the monitoring system 304. This is excessive. The invention, in part, is a recognition that it is a problem that some interfaces to mature systems require a great deal of user interaction. A way to eliminate this excessive interaction is to redesign these interfaces so that they are more user friendly, i.e., require less direct user interaction. But this is prohibitively expensive. Typically, the large systems and the associated monitoring systems are mature products for which research and development efforts have been greatly diminished or curtailed entirely. Moreover, the burden and inconvenience to the user of these interfaces, i.e., the opportunity costs of the user, even when multiplied by the great many users involved, is still significantly outweighed by the costs associated with redesigning the interfaces.
The invention is, in part, a recognition that the amount of direct user interaction with the monitoring systems can be greatly reduced by providing a liaison interface between the user and at least a first interface. For example, such a liaison interface can be retrofit between a user and an existing interface. This solves the excessive direct user interaction problems suffered by the known interfaces while avoiding the great costs associated with revising the interfaces per se. The liaison interface automatically interacts with the existing interfaces, i.e., the liaison interface interacts with the existing interfaces without the direct involvement of the human user.
The invention, at least in part, is embodied by providing an arrangement of interfaces to a system, the arrangement of interfaces comprising: a first interface to said system, said first interface requiring direct user interaction in order for said user to communicate a first amount of information with said system; and a second interface to said system, said second interface requiring less direct user interaction than said first interface to communicate said first amount of information with said system. Such a second interface communicates said first amount of information with said user in a different manner than said first interface, and said second interface communicates said first amount of information with said system by emulating said first interface so as to at least reduce, if not eliminate, any need for the user to directly interact with said first interface.
The invention is also embodied, at least in part, by providing (for a machine directly connected to a system, said system having a first interface that requires direct user interaction in order for the user to produce a desired result from said system) a method (and software to cause a computer) to generate a second interface to said system, said second interface requiring less direct user interaction than said first interface to produce said desired result from said system. Such a method comprises: receiving a request for said desired result from said user; emulating said first interface to communicate a first amount of information with said system to achieve said desired result from said system; and generating a second interface that communicates a second amount of information with said user, where said second amount of information represents said desired result, said second amount of information is less than said first amount, and said second interface at least reduces, if not eliminates, any need for said user to directly interact with said first interface to produce said desired result.
The invention is also embodied, at least in part, by providing an integration apparatus to integrate interfaces to a system, said system having at least a first interface and a second interface, said first and second interfaces not being integrated together, said first interface requiring a large amount of direct user interaction to communicate a first amount of information between said user and said system. Such an apparatus comprises: a processor, directly connected to said system, to receive a high level request from said user to produce a result via interaction with said system, and to initiate a first session with said system by emulating said first interface to exchange said first amount of information with said system to achieve said result; and a device to communicate said result from said processor to said user, wherein said integration apparatus at least reduces, if not eliminates, any need for said user to directly interact with said first interface to produce said result.
Objectives, features and advantages of the invention will be more fully apparent from the following detailed description of the preferred embodiments, the appended claims and the accompanying drawings.